home *** CD-ROM | disk | FTP | other *** search
- {
- Coded By Frank Diacheysn Of Gemini Software
-
- FUNCTION WHEREISDOS
-
- Input......: None
- :
- :
- :
- :
-
-
- Output.....: 2-Character String, Explained Further Below.
- :
- :
- :
- :
-
- Example....: IF Chars[1] = 'O' THEN
- : WriteLn('DOS Is Resident In ROM')
- : ELSE
- : WriteLn('DOS Is Resident In RAM');
- : IF Chars[2] = 'H' THEN
- : WriteLn('DOS Is Loaded Into High Memory (HMA)')
- : ELSE
- : WriteLn('DOS Is Loaded Into Conventional Memory');
-
- Description: Returns The Status Of Where DOS Is Loaded Using The Following:
- : Chars[1] = 'O' (Resident In ROM)
- : Chars[1] = 'A' (Resident In RAM)
- : Chars[2] = 'H' (Loaded In High Memory)
- : Chars[2] = 'C' (Loaded in Conventional Memory)
-
- }
- FUNCTION WHEREISDOS:STRING;
- VAR Chars : ARRAY [1..2] OF CHAR;
- BEGIN
- Regs.AH := $33;
- Regs.AL := $06;
- Intr( $33,Regs );
- IF (Regs.DH AND $04)=$04 THEN Chars[1] := 'O' ELSE Chars[1] := 'A';
- IF (Regs.DH AND $08)=$08 THEN Chars[2] := 'H' ELSE Chars[2] := 'C';
- WHEREISDOS := Chars[1]+Chars[2];
- END;